package com.lnking.lnkingplace.service;

import com.lnking.lnkingplace.model.dto.isolation.place.PlaceReserveDto;
import com.lnking.lnkingplace.model.dto.isolation.statistics.HistoryDataDto;
import com.lnking.lnkingplace.model.dto.isolation.statistics.IsolationPlaceStatisticsCount;
import com.lnking.lnkingplace.model.dto.isolation.statistics.PlaceStatisticsPersonnelType;
import com.lnking.lnkingplace.model.request.isolation.statistics.StatisticsSearchPersonnelType;

import java.util.List;
import java.util.Map;

public interface IIsolationPlaceStatisticsService {

    /**
     * 隔离人员数据
     * @return
     */
    Map<String,Integer> getIsolationPersonnel();
    /**
     * 隔离房间数据
     * @return
     */
    Map<String,Integer> getIsolationRoom(String street);

    /**
     * 隔离场所专班人员
     * @return
     */
    Map<String,Integer> getIsolationWorker(String placeId,String street);

    /**
     * 关心关爱台账-记录数
     * @return
     */
    Map<String,Integer> getIsolationAssistance(String street);

    /**
     * 关心关爱台账-人员类型统计
     * @return
     */
    List<IsolationPlaceStatisticsCount> getIsolationAssistanceType(String street);

    /**
     * 问题整改台账
     * @return
     */
    Map<String,Integer> getPlaceProblem(String street);

    /**
     * 获取历史数据
     * @return
     */
    List<HistoryDataDto> getHistoryData(String street);

    List<IsolationPlaceStatisticsCount> getPersonnelPieChart(String today,String street);

    Map<String,Integer> getPositive(String street);

    List<IsolationPlaceStatisticsCount> getPositivePieChart(String street);

    List<IsolationPlaceStatisticsCount> getAfterPositivePieChart(String street);

    List<IsolationPlaceStatisticsCount> getIsolationWorkerPieChart(String placeName, String camp,String street);

    List<IsolationPlaceStatisticsCount> getSupportOccupancyTotal(String placeName,String street);

    List<IsolationPlaceStatisticsCount> getSupportOccupancyNumber(String placeName,String street);

    List<IsolationPlaceStatisticsCount> getSupportDayNewNumber(String placeName,String street);

    List<IsolationPlaceStatisticsCount> getSupportUseRoom(String placeName,String street);

    Map<String,Integer> getPlacePlan(String street);

    List<PlaceReserveDto> getIsolationPlaceReserve(String street);

    PlaceReserveDto getPlaceReserve(String placeType,String street);

    List<IsolationPlaceStatisticsCount> getLineChart(String type,String street);

    Map<String,Integer> getRelieveData(String street);

    Map<String,Integer> getHistoryEqData(String street, String date);

    Object getPersonnelType(StatisticsSearchPersonnelType params);

    Map<String,Object> getIsolationPlaceInfo(String placeName);
}
